草庐IT

flutter - ListView恢复滚动位置

全部标签

javascript - 页面在 iPhone 中存在虚拟键盘时向上滚动

我的网站上有一个聊天应用程序页面。主容器在移动设备上占据完整的高度和宽度。容器有position:fixed和里面的3个divposition:absolute。最后一个div#app-msg-composer有一个textarea并像其他聊天应用程序一样在其中发送button。以下是简要代码:Send#app-container{position:fixed;height:100%;width:100%;top:0px;bottom:0px;}#app-header{position:absolute;height:48px;width:100%;top:0px;}#app-body

javascript - 每当我更改其值时如何阻止文本区域滚动到顶部

我正在制作一些东西,其中文本区域会附加越来越多的文本。在firefox中,文本区域每次都向上滚动到顶部。我目前有类似textarea.scrollTop=1000000;的内容,可以在每次更改时将其向下滚动,但它仍然会在很短的时间内上升到顶部。有什么办法可以阻止它这样做吗? 最佳答案 我也遇到了这个问题。它发生在IE和Firefox中,但不会发生在Opera和Chrome中。我想通过对文本区域进行“double-buffering”更改来隐藏瞬间跳转到顶部:创建两个具有完全相同属性和尺寸的文本区域。其中只有一个是可见的;另一个是隐藏

javascript - 在修改 innerHTML 后保存/恢复对 contentEditable 的选择

我知道在contentEditable中获取/设置光标位置几乎是不可能的。我不在乎知道这些信息。我需要能够保存当前选择,修改div的innerHTML,然后恢复选择。我一直在试验contenteditableselectedtextsaveandrestore提供的答案.它在输入div后起作用,但在以编程方式修改div的innerHTML后不起作用。相反,当我调用restoreSelection时,插入符号只是转到开头。任何关于如何在修改innerHTML而不是键入后能够保存/恢复contentEditable上的选择的建议将不胜感激。 最佳答案

javascript - 在 AngularJS 中放置 Cordova/Phonegap 事件的最佳位置

我有一个AngularJSCordova应用程序,目前一切都非常顺利。我的下一步是将Cordova插件添加到应用程序中,例如CordovaConnect插件,以检查网络连接是否打开并监听网络事件。计划是监听这些网络事件并询问连接插件设备是否连接到互联网,如果没有我将重定向到错误页面。我正在努力在我的AngularJS应用程序中找到一个位置,以便在应用程序启动时注册这些事件。它们应该在主运行block、配置block中还是在某种工厂/服务/提供者中?你们要把这些外部AngularJS设备事件放在哪里?外汇。document.addEventListener("online",yourCa

javascript - wysihtml5 光标跳到新行的错误位置

当点击'return'或'enter'时,光标不跟随实际行。有解决问题的方法吗?插件有几个分支可以解决这个问题,但我很好奇解决它的实际解决方案是什么。这是一个基于项目的jQuery插件:https://github.com/jhollingworth/bootstrap-wysihtml5/你可以看到错误:http://jhollingworth.github.io/bootstrap-wysihtml5/(按回车几次) 最佳答案 这个问题已经讨论过ontheproject'sGitHubpage.修复是mentionedinthe

javascript - 在光标位置的可编辑 div 中插入几个元素

我有一个带有contenteditable属性的div。用户需要能够在光标所在的位置键入和插入多个选择菜单。我已经设法获取光标位置并插入第一个选择菜单,但它只适用于第一个文本节点。这就是我获取光标位置的方式:functiongetCaretCharacterOffsetWithin(element){varcaretOffset=0;vardoc=element.ownerDocument||element.document;varwin=doc.defaultView||doc.parentWindow;varsel;if(typeofwin.getSelection!="undef

javascript - 禁用预测滚动 - 鼠标滚轮 (OnScroll) 事件触发过于频繁(触摸板)

我正在执行JavascriptonScroll。我的代码适用于任何普通计算机鼠标,但是当我使用笔记本的触摸板时,我遇到以下情况:当手指移动滚轮时,我的鼠标会触发(大约1到8次)mousewheel事件。我的触摸板触发了更多(~60)个mousewheel事件,同时两根手指触摸触摸板并在我的手指再次悬空后继续触发。我知道移动触摸设备的这种行为。该功能称为“预测触摸”-如果您的手指移动在抬起之前有足够的加速度,则滚动会继续。我认为触摸板驱动程序正在设置这种“平滑滚动”行为。为了调试这种情况,我使用了以下代码:/*HandleMouse-WheelScrolling*/varlastChan

javascript - 如果指定了绝对位置和 overflow-x hidden,则无法滚动到元素

我有动画ng-view。我正在使用上滑动画,它需要元素的绝对位置以及overflow-x:hidden来剪辑内容。在一个子页面中,我必须使用scrollTo元素功能,但如果指定了both2个值,它就不起作用。这是正确动画所需的主要ng-view类.wrapper{position:absolute!important;left:0;top:0;height:100%;min-height:100%;min-width:100%;overflow-x:hidden;}和结构:Section1Section2Section3CCC我准备了plnkr轻松展示它现在的样子。除了这两个值,还有其

javascript - 是否可以针对特定的 jQuery Ajax 调用禁用 Turbolinks 以防止页面刷新和滚动?

我有一个Rails5应用程序,非常想使用Turbolinks。在应用程序中有几个PATCHajax调用,它们只是用新数据更新服务器,但不需要担心更新页面的状态。只要这些ajax请求返回,Turbolinks就会刷新页面并且浏览器会滚动到屏幕顶部。这是不可取的行为;最好让东西留在原处。禁用Turbolinks可以解决这个问题。导致问题的示例(super基本)ajax调用:$.ajax({method:"PATCH",url:url,data:obj});是否有其他人遇到过这种情况或对如何防止页面滚动发生有任何想法? 最佳答案 有同样的

javascript - 获取已转换元素的局部坐标中的触摸位置

我有一个用matrix3d转换的元素给它透视。它代表手持设备的屏幕。有一个显示手持设备本身的背景图像,并且没有转换。放置它的元素被定位,屏幕元素绝对定位在它里面,在left:0;top:0;。,然后进行转换,原点位于容器的左上角。这是我将其与背景图像完美对齐的最简单方法(我使用thisveryhandytool得出矩阵),并将屏幕元素从Angular落移开。我希望能够通过鼠标和触摸事件与屏幕进行交互。为此,在单击或触摸事件时,我需要在屏幕元素的局部坐标系中找到坐标——即发生变换之前的坐标。换句话说,当单击手持设备屏幕的左上角(不是页面上边界框的左上角!)时,我想要[0,0],当单击屏幕